/*
 * This is the SNDINFO for zdoom.wad. Unlike Hexen, SNDINFO lumps in pwads
 * are additive, so your SNDINFO only needs to contain the sounds listed
 * here that you want to change or new sounds you are defining. You do not
 * need to edit a copy of this file. In fact, if you try to put a copy of
 * this file in a pwad, you will get an error when ZDoom tries to load the
 * SNDINFO in your pwad.
 */

//===========================================================================
//
// Generic player sounds
//
//===========================================================================

// Use *pain in a script to play any of the pain sounds
$random *pain			{ *pain100  *pain75  *pain50  *pain25 }

//===========================================================================
//
// Compatibility aliases (because older ZDooms did not have them the same)
//
//===========================================================================

// Trying to use a locked door
$alias misc/keytry		*usefail

// Pickup sounds that were not unique before
$alias misc/health_pkup		misc/i_pkup	// Pickup health
$alias misc/armor_pkup		misc/i_pkup	// Pickup armor
$alias misc/ammo_pkup		misc/i_pkup	// Pickup ammo

/***************************************************************************/
/*                                                                         */
/* ZDOOM SOUNDS AVAILABLE IN ANY GAME                                      */
/*                                                                         */
/***************************************************************************/

world/spark1			spark1
world/spark2			spark2
world/spark3			spark3
$random world/spark		{ world/spark1  world/spark2  world/spark3 }

// These gets redefined below for Hexen
world/quake			dsquake
misc/freeze			icedth1
misc/icebreak			icebrk1a

// The released source code used a min distance of 160. Why?
// Retail Doom and Strife use 200.
$rolloff * 200 1200

// Marine's Best Friend -- not just for marines anymore!
dog/active			dsdgact
dog/attack			dsdgatk
dog/death			dsdgdth
dog/pain			dsdgpain
dog/sight			dsdgsit

// [BB] Connect sound for Zandronum.
zandronum/connect   cnnctsnd

/****************************************************************************/
/*																			*/
/* DOOM SOUNDS																*/
/*																			*/
/****************************************************************************/

$ifdoom


// BOOM has pitch shifting equivalent to a range of 4. I never got to hear
// Doom when it used pitch shifting, so I don't know if this is correct or not.
$pitchshiftrange 4

// This sound is never actually used. It's just defined here for
// compatibility with DeHackEd patches that reference dsskldth.
misc/unused			dsskldth	// Sounds just like dsoof

//===========================================================================
//
// Doom-specific player sounds
//
//===========================================================================

$playersound	player	male	*death		dspldeth
$playersound	player	male	*xdeath		dspdiehi
$playersound	player	male	*gibbed		dsslop
$playersound	player	male	*pain100	dsplpain
$playersounddup	player	male	*pain75		*pain100
$playersounddup	player	male	*pain50		*pain100
$playersounddup	player	male	*pain25		*pain100
$playersound	player	male	*grunt		dsoof
$playersounddup	player	male	*land		*grunt
$playersound	player	male	*jump		dsjump
$playersound	player	male	*fist		dspunch
$playersound	player	male	*usefail	dsnoway
// [BC] New player sound for Skulltag: taunt.
$playersound	player	male	*taunt		dstaunt

$playersound	player	female	*death		dsfldeth
$playersound	player	female	*xdeath		dsfdiehi
$playersound	player	female	*gibbed		dsslop
$playersound	player	female	*pain100	dsflpain
$playersounddup	player	female	*pain75		*pain100
$playersounddup	player	female	*pain50		*pain100
$playersounddup	player	female	*pain25		*pain100
$playersound	player	female	*grunt		dsfoof
$playersounddup	player	female	*land		*grunt
$playersound	player	female	*jump		dsfjump
$playersound	player	female	*fist		dspunch
$playersound	player	female	*usefail	dsfnoway
// [BC] New player sound for Skulltag: taunt.
$playersound	player	female	*taunt		dstaunt

$playersound	player	other	*death		dscldeth
$playersound	player	other	*xdeath		dscdiehi
$playersound	player	other	*gibbed		dsslop
$playersound	player	other	*pain100	dsclpain
$playersounddup	player	other	*pain75		*pain100
$playersounddup	player	other	*pain50		*pain100
$playersounddup	player	other	*pain25		*pain100
$playersound	player	other	*grunt		dscoof
$playersounddup	player	other	*land		*grunt
$playersound	player	other	*jump		dscjump
$playersound	player	other	*fist		dspunch
$playersound	player	other	*usefail	dscnoway
// [BC] New player sound for Skulltag: taunt.
$playersound	player	other	*taunt		dstaunt

// Alternate names for some player sounds needed for ZDoom <= 1.22 compatibility
//
// If any sounds with these names are defined later, they will redefine
// the corresponding player sounds instead. Likewise, if they are played,
// they will play the corresponding player sound instead.

$playercompat	player	male	*death		player/male/death1
$playercompat	player	male	*death		player/male/death2
$playercompat	player	male	*death		player/male/death3
$playercompat	player	male	*death		player/male/death4
$playercompat	player	male	*xdeath		player/male/xdeath1
$playercompat	player	male	*pain100	player/male/pain100_1
$playercompat	player	male	*pain100	player/male/pain100_2
$playercompat	player	male	*pain75		player/male/pain75_1
$playercompat	player	male	*pain75		player/male/pain75_2
$playercompat	player	male	*pain50		player/male/pain50_1
$playercompat	player	male	*pain50		player/male/pain50_2
$playercompat	player	male	*pain25		player/male/pain25_1
$playercompat	player	male	*pain25		player/male/pain25_2
$playercompat	player	male	*grunt		player/male/grunt1
$playercompat	player	male	*land		player/male/land1
$playercompat	player	male	*jump		player/male/jump1
$playercompat	player	male	*gibbed		player/male/gibbed
$playercompat	player	male	*fist		player/male/fist
// [BC] New player sound for Skulltag: taunt.
$playercompat	player	male	*taunt		player/male/taunt

$playercompat	player	female	*death		player/female/death1
$playercompat	player	female	*death		player/female/death2
$playercompat	player	female	*death		player/female/death3
$playercompat	player	female	*death		player/female/death4
$playercompat	player	female	*xdeath		player/female/xdeath1
$playercompat	player	female	*pain100	player/female/pain100_1
$playercompat	player	female	*pain100	player/female/pain100_2
$playercompat	player	female	*pain75		player/female/pain75_1
$playercompat	player	female	*pain75		player/female/pain75_2
$playercompat	player	female	*pain50		player/female/pain50_1
$playercompat	player	female	*pain50		player/female/pain50_2
$playercompat	player	female	*pain25		player/female/pain25_1
$playercompat	player	female	*pain25		player/female/pain25_2
$playercompat	player	female	*grunt		player/female/grunt1
$playercompat	player	female	*land		player/female/land1
$playercompat	player	female	*jump		player/female/jump1
$playercompat	player	female	*gibbed		player/female/gibbed
$playercompat	player	female	*fist		player/female/fist

$playercompat	player	other	*death		player/cyborg/death1
$playercompat	player	other	*death		player/cyborg/death2
$playercompat	player	other	*death		player/cyborg/death3
$playercompat	player	other	*death		player/cyborg/death4
$playercompat	player	other	*xdeath		player/cyborg/xdeath1
$playercompat	player	other	*pain100	player/cyborg/pain100_1
$playercompat	player	other	*pain100	player/cyborg/pain100_2
$playercompat	player	other	*pain75		player/cyborg/pain75_1
$playercompat	player	other	*pain75		player/cyborg/pain75_2
$playercompat	player	other	*pain50		player/cyborg/pain50_1
$playercompat	player	other	*pain50		player/cyborg/pain50_2
$playercompat	player	other	*pain25		player/cyborg/pain25_1
$playercompat	player	other	*pain25		player/cyborg/pain25_2
$playercompat	player	other	*grunt		player/cyborg/grunt1
$playercompat	player	other	*land		player/cyborg/land1
$playercompat	player	other	*jump		player/cyborg/jump1
$playercompat	player	other	*gibbed		player/cyborg/gibbed
$playercompat	player	other	*fist		player/cyborg/fist

//
// Weapons
//

$pitchshiftrange 3
weapons/sawup			dssawup
weapons/sawidle			dssawidl
weapons/sawfull			dssawful
weapons/sawhit			dssawhit
$pitchshiftrange 4

weapons/pistol			dspistol
weapons/shotgf			dsshotgn
weapons/shotgr			dssgcock
weapons/sshotf			dsdshtgn
weapons/sshoto			dsdbopn
weapons/sshotc			dsdbcls
weapons/sshotl			dsdbload
weapons/chngun			dspistol
weapons/rocklx			dsbarexp
weapons/rocklf			dsrlaunc
weapons/plasmaf			dsplasma
weapons/plasmax			dsfirxpl
weapons/bfgf			dsbfg
weapons/bfgx			dsrxplod
weapons/railgf			railgf1
weapons/grbnce          dsbounce
weapons/grenlx			dsgrnexp
weapons/grenlf			dsglaunc

// Problem: weapons/rocklx needs to be unlimited but
// is also used for the MAP30 brain explosion.
// This alias remaps to the original but has its own limit
// attached so that it doesn't become too loud.
$alias misc/brainexplode weapons/rocklx
$limit misc/brainexplode 4

$limit weapons/plasmaf 0
$limit weapons/chngun 0
$limit weapons/rocklf 0		// because normal running is almost as fast as a rocket
$limit weapons/rocklx 0		// and the cyberdemon shoots 3 at once

//===========================================================================
//
// MONSTER SOUNDS
//
//===========================================================================

misc/gibbed			dsslop

// Zombie man

$random grunt/sight 		{ grunt/sight1  grunt/sight2  grunt/sight3 }
$random grunt/death		{ grunt/death1  grunt/death2  grunt/death3 }
grunt/sight1			dsposit1
grunt/sight2			dsposit2
grunt/sight3			dsposit3
grunt/active			dsposact
grunt/pain			dspopain
grunt/death1			dspodth1
grunt/death2			dspodth2
grunt/death3			dspodth3
grunt/attack			dspistol

// Shotgun guy

$random shotguy/sight		{ shotguy/sight1  shotguy/sight2  shotguy/sight3 }
$random shotguy/death		{ shotguy/death1  shotguy/death2  shotguy/death3 }
shotguy/sight1			dsposit1
shotguy/sight2			dsposit2
shotguy/sight3			dsposit3
shotguy/active			dsposact
shotguy/pain			dspopain
shotguy/death1			dspodth1
shotguy/death2			dspodth2
shotguy/death3			dspodth3
shotguy/attack			dsshotgn

// Archvile

vile/sight			dsvilsit
vile/active			dsvilact
vile/pain			dsvipain
vile/death			dsvildth
vile/raise			dsslop
vile/start			dsvilatk
vile/stop			dsbarexp
vile/firestrt			dsflamst
vile/firecrkl			dsflame

// Revenant

skeleton/sight			dsskesit
skeleton/active			dsskeact
skeleton/pain			dspopain
skeleton/melee			dsskepch
skeleton/swing			dsskeswg
skeleton/death			dsskedth
skeleton/attack			dsskeatk
skeleton/tracex			dsbarexp

// Fatso

fatso/sight			dsmansit
fatso/active			dsposact
fatso/pain			dsmnpain
fatso/raiseguns			dsmanatk
fatso/death			dsmandth
fatso/attack			dsfirsht
fatso/shotx			dsfirxpl

// Chainguy

$random chainguy/sight		{ chainguy/sight1  chainguy/sight2  chainguy/sight3 }
$random chainguy/death		{ chainguy/death1  chainguy/death2  chainguy/death3 }
chainguy/sight1			dsposit1
chainguy/sight2			dsposit2
chainguy/sight3			dsposit3
chainguy/active			dsposact
chainguy/pain			dspopain
chainguy/death1			dspodth1
chainguy/death2			dspodth2
chainguy/death3			dspodth3
chainguy/attack			dsshotgn
$limit chainguy/attack 0

// Imp

$random imp/sight		{ imp/sight1  imp/sight2 }
$random imp/death		{ imp/death1  imp/death2 }
imp/sight1			dsbgsit1
imp/sight2			dsbgsit2
imp/active			dsbgact
imp/pain			dspopain
imp/melee			dsclaw
imp/death1			dsbgdth1
imp/death2			dsbgdth2
imp/attack			dsfirsht
imp/shotx			dsfirxpl
$limit imp/active 6

// Demon

demon/sight			dssgtsit
demon/active			dsdmact
demon/pain			dsdmpain
demon/melee			dssgtatk
demon/death			dssgtdth
$limit demon/melee 4

// Spectre

spectre/sight			dssgtsit
spectre/active			dsdmact
spectre/pain			dsdmpain
spectre/melee			dssgtatk
spectre/death			dssgtdth

// Cacodemon

caco/sight			dscacsit
caco/active			dsdmact
caco/pain			dsdmpain
caco/death			dscacdth
caco/attack			dsfirsht
caco/shotx			dsfirxpl

// Baron of Hell

baron/sight			dsbrssit
baron/active			dsdmact
baron/pain			dsdmpain
baron/melee			dsclaw
baron/death			dsbrsdth
baron/attack			dsfirsht
baron/shotx			dsfirxpl

// Hell Knight

knight/sight			dskntsit
knight/active			dsdmact
knight/pain			dsdmpain
knight/death			dskntdth

// Lost Soul

skull/active			dsdmact
skull/pain			dsdmpain
skull/melee			dssklatk
skull/death			dsfirxpl

// Spider Mastermind

spider/sight			dsspisit
spider/active			dsdmact
spider/pain			dsdmpain
spider/attack			dsshotgn
spider/death			dsspidth
spider/walk			dsmetal

// Arachnotron

baby/sight			dsbspsit
baby/active			dsbspact
baby/pain			dsdmpain
baby/death			dsbspdth
baby/walk			dsbspwlk
baby/attack			dsplasma
baby/shotx			dsfirxpl

$limit baby/attack 0

// Cyber Demon

cyber/sight			dscybsit
cyber/active			dsdmact
cyber/pain			dsdmpain
cyber/death			dscybdth
cyber/hoof			dshoof

// Pain Elemental

pain/sight			dspesit
pain/active			dsdmact
pain/pain			dspepain
pain/death			dspedth

// Wolfenstein SS

wolfss/sight			dssssit
wolfss/active			dsposact
wolfss/pain			dspopain
wolfss/death			dsssdth
wolfss/attack			dsshotgn

// Commander Keen

keen/pain			dskeenpn
keen/death			dskeendt

// Boss Brain

brain/sight			dsbossit
brain/pain			dsbospn
brain/death			dsbosdth
brain/spit			dsbospit
brain/cube			dsboscub
brain/cubeboom			dsfirxpl
$alias brain/spawn		misc/teleport


//============================================================================
//
// WORLD SOUNDS
//
//===========================================================================

world/barrelx			dsbarexp

world/drip			dsempty
world/watersplash		dsempty
world/sludgegloop		dsempty
world/lavasizzle		dsempty

//
//
// Platform Sounds
//

plats/pt1_strt			dspstart
plats/pt1_stop			dspstop
plats/pt1_mid			dsstnmov

//
// Door Sounds
//

doors/dr1_open			dsdoropn
doors/dr1_clos			dsdorcls
doors/dr2_open			dsbdopn
doors/dr2_clos			dsbdcls

//===========================================================================
//
// MISCELLANEOUS SOUNDS
//
//===========================================================================

misc/secret			dssecret
misc/w_pkup			dswpnup		// Pickup weapon
misc/p_pkup			dsgetpow	// Pickup powerup
misc/i_pkup			dsitemup	// Pickup item
misc/k_pkup			dsitemup	// Pickup key
misc/spawn			dsitmbk		// Item respawn
misc/chat			dsradio		// Doom 2 chat sound
misc/chat2			dstink		// Chat sound for everything else
misc/llama			dsllama		// [BC] Llama sound
misc/spam			dsspam		// [BC] Spam sound

$limit misc/i_pkup		1
$limit misc/k_pkup		1
$limit misc/w_pkup		1
$limit misc/p_pkup		1
$pitchshift misc/i_pkup		0
$pitchshift misc/k_pkup		0
$pitchshift misc/chat2		0

switches/normbutn		dsswtchn
switches/exitbutn		dsswtchx

misc/teleport			dstelept

menu/activate			dsswtchn	// Activate a new menu
menu/backup			dsswtchn	// Backup to previous menu
menu/prompt			dsswtchn	// Activate a prompt "menu"
menu/cursor			dspstop		// Move cursor up/down
menu/change			dsstnmov	// Select new value for option
menu/invalid			dsoof		// Menu not available
menu/dismiss			dsswtchx	// Dismiss a prompt message
menu/choose			dspistol	// Choose a menu item
menu/clear			dsswtchx	// Close top menu

$random menu/quit1 { player/male/death1 demon/pain grunt/pain misc/gibbed misc/teleport grunt/sight1 grunt/sight3 demon/melee }
$random menu/quit2 { vile/active misc/p_pkup brain/cube misc/gibbed skeleton/swing knight/death baby/active demon/melee  }

$alias				intermission/tick			weapons/pistol
$alias				intermission/cooptotal		*death
$alias				intermission/nextstage		weapons/rocklx
$alias				intermission/paststats		weapons/shotgr
$alias				intermission/pastcoopstats	weapons/shotgr
$alias				intermission/pastdmstats	*gibbed


$endif	// ifdoom


/****************************************************************************/
/*																			*/
/* HERETIC SOUNDS															*/
/*																			*/
/****************************************************************************/

$ifheretic

$rolloff * custom 0 1600

$pitchshiftrange 2

$playersound	player	male	*wimpydeath	plrwdth
$playersound	player	male	*death		plrdth
$playersound	player	male	*crazydeath	plrcdth
$playersound	player	male	*gibbed		gibdth
$playersound	player	male	*pain100	plrpai
$playersounddup	player	male	*pain75		*pain100
$playersounddup	player	male	*pain50		*pain100
$playersounddup	player	male	*pain25		*pain100
$playersound	player	male	*weaponlaugh	wpnup
$playersounddup	player	male	*evillaugh	*weaponlaugh
$playersound	player	male	*grunt		plroof
$playersounddup	player	male	*usefail	*grunt
$playersounddup	player	male	*land		*grunt
$playersound	player	male	*jump		plrjmp
$playersound	player	male	*burndeath	hedat1

$playeralias	chicken male	*usefail	chicken/peck
$PlayerAlias   	Chicken Male   	*Grunt   	chicken/pain
$PlayerAlias   	Chicken Male   	*Land      	chicken/pain
$PlayerAlias   	Chicken Male   	*Jump      	chicken/active
$PlayerAlias   	Chicken Male   	*EvilLaugh 	chicken/active

chicken/sight			chicpai
chicken/pain			chicpai
chicken/death			chicdth
chicken/attack			chicatk

misc/burn			hedat1

weapons/staffhit		stfhit
weapons/staffpowerhit		stfpow
weapons/staffcrackle		stfcrk
weapons/wandhit			gldhit
weapons/bowshoot		bowsht
weapons/bowhit			hrnhit
weapons/gauntletsactivate	gntact
weapons/gauntletsuse		gntuse
weapons/gauntletson		gntful
weapons/gauntletshit		gnthit
weapons/gauntletspowhit		gntpow
weapons/maceshoot		lobsht
weapons/macebounce		bounce
weapons/macehit			lobhit
weapons/macestop		pstop
weapons/maceexplode		phohit
weapons/blasterhit		blshit
weapons/blasterpowhit		hrnhit
weapons/blastershoot		blssht
weapons/hornrodshoot		hrnsht
weapons/hornrodhit		hrnhit
weapons/hornrodpowshoot		hrnpow
weapons/hornrodpowhit		ramphit
weapons/phoenixshoot		phosht
weapons/phoenixhit		phohit
weapons/phoenixpowshoot		phopow

$limit	weapons/gauntletson		0
$limit	weapons/gauntletshit		0
$limit	weapons/gauntletspowhit		0
$limit	weapons/gauntletsactivate	0
$limit	weapons/gauntletsuse		0
$limit	weapons/maceexplode		0
$limit	weapons/phoenixhit		0
$limit	weapons/phoenixpowshoot		1

// [RH] Heretic didn't have these limitless, but they can sound bad if they're not
$limit weapons/bowhit 0
$limit weapons/hornrodshoot 0
$limit weapons/hornrodhit 0
$limit weapons/maceshoot 0

himp/sight			impsit
himp/attack			impat1
himp/pain			imppai
himp/death			impdth
himp/active			impsit
himp/leaderattack		impat2

misc/invuse			artiuse

$limit	misc/invuse		1

world/podexplode		podexp
world/podgrow			newpod
world/wind			wind
world/waterfall			waterfl

$limit world/podexplode		0
$limit world/podgrow		0
$limit world/wind		1

misc/i_pkup			itemup
misc/k_pkup			keyup
misc/p_pkup			artiup
$alias misc/w_pkup		*weaponlaugh

misc/rain			ramrain
misc/spawn			respawn

$limit misc/spawn		1

//
// Minotaur sounds
//

minotaur/sight			minsit
minotaur/melee			stfpow
minotaur/attack1		minat1
minotaur/attack2		minat2
minotaur/attack3		minat3
minotaur/pain			minpai
minotaur/death			mindth
minotaur/active			minact
minotaur/fx2hit			phohit
minotaur/fx3hit			phohit

//
// Wizard sounds
//

wizard/sight			wizsit
wizard/attack			wizatk
wizard/death			wizdth
wizard/pain			wizpai
wizard/active1			wizact
$random wizard/active 		{ wizard/sight wizard/active1 }

//
// Switch sounds
//

switches/normbutn		switch
$alias switches/exitbutn	switches/normbutn // Heretic has no special exit button sound

//
//
// Platform Sounds
//

plats/pt1_strt			pstart
plats/pt1_stop			pstop
plats/pt1_mid			dormov

//
// Door Sounds
//

doors/dr1_open			doropn
doors/dr1_clos			dorcls
doors/dr2_open			doropn
doors/dr2_clos			dorcls

//
// Ambient sounds
//

world/amb1			amb1
world/amb2			amb2
world/amb3			amb3
world/amb4			amb4
world/amb5			amb5
world/amb6			amb6
world/amb7			amb7
world/amb8			amb8
world/amb9			amb9
world/amb10			amb10
world/amb11			amb11
world/amb12			bstsit

$limit world/amb1		1
$limit world/amb2		1
$limit world/amb3		1
$limit world/amb4		1
$limit world/amb5		1
$limit world/amb6		1
$limit world/amb7		1
$limit world/amb8		1
$limit world/amb9		1
$limit world/amb10		1
$limit world/amb11		0

misc/chat			chat
misc/teleport			telept
misc/ripslop			ripslop

$limit misc/chat		1

world/drip			gloop
world/watersplash		gloop
world/lavasizzle		burn
world/sludgegloop		dsempty

mummy/sight			mumsit
mummy/attack1			mumat1
mummy/attack2			mumat2
mummy/pain			mumpai
mummy/death			mumdth
mummy/active			mumsit
mummy/head			mumhed

beast/sight			bstsit
beast/attack			bstatk
beast/pain			bstpai
beast/death			bstdth
beast/active			bstact

snake/attack			snkatk
snake/sight			snksit
snake/pain			snkpai
snake/death			snkdth
snake/active			snkact

clink/sight			clksit
clink/attack			clkatk
clink/pain			clkpai
clink/death			clkdth
clink/active			clkact

hknight/sight			kgtsit
hknight/attack			kgtatk
hknight/melee			kgtat2
hknight/pain			kgtpai
hknight/death			kgtdth
hknight/active			kgtsit
hknight/hit			hrnhit
hknight/axewhoosh		kgtatk

misc/timebomb			phohit
world/volcano/blast		lobhit
world/volcano/shoot		bstatk

ironlich/sight			hedsit
ironlich/attack1		hedat1
ironlich/attack2		hedat2
ironlich/attack3		hedat3
ironlich/pain			hedpai
ironlich/death			heddth
ironlich/active			hedact

dsparilserpent/sight		bstsit
dsparilserpent/attack		bstatk
dsparilserpent/pain		sbtpai
dsparilserpent/death		sbtdth
dsparilserpent/active		sbtact

dsparil/sight			sorsit
dsparil/attack			soratk
dsparil/pain			sorpai
dsparil/active			soract
dsparil/rise			sorrise
dsparil/zap			sorzap
dsparil/scream			sordsph
dsparil/explode			sordexp
dsparil/bones			sordbon

chicken/active			chicact
chicken/attack			chicatk
chicken/pain			chicpai
chicken/death			chicdth
chicken/peck1			chicpk1
chicken/peck2			chicpk2
chicken/peck3			chicpk3
$random chicken/peck		{ chicken/peck1  chicken/peck2  chicken/peck3 }

menu/activate			dorcls
menu/backup			switch
menu/prompt			chat
menu/choose			dorcls
menu/cursor			switch
menu/change			keyup
menu/invalid			plroof
menu/dismiss			dorcls
menu/clear			dorcls

misc/secret			dssecret

$alias				intermission/cooptotal		*death
$alias				intermission/nextstage		doors/dr1_clos
$alias				intermission/paststats		plats/pt1_stop
$alias				intermission/pastcoopstats	plats/pt1_stop
$alias				intermission/pastdmstats	*gibbed


$endif	// ifheretic


/****************************************************************************/
/*																			*/
/* HEXEN SOUNDS																*/
/*																			*/
/****************************************************************************/

$ifhexen

$rolloff * custom 0 2025

$pitchshiftrange 3

$random PlayerFighterExtremeDeathPicker	{ PlayerFighterExtreme1Death
					  PlayerFighterExtreme2Death
					  PlayerFighterExtreme3Death }

$playeralias	fighter	male	*death		PlayerFighterNormalDeath
$playeralias	fighter	male	*crazydeath	PlayerFighterCrazyDeath
$playeralias	fighter	male	*burndeath	PlayerFighterBurnDeath
$playeralias	fighter	male	*xdeath		PlayerFighterExtremeDeathPicker
$playeralias	fighter	male	*pain100	PlayerFighterPain
$playersounddup	fighter	male	*pain75		*pain100
$playersounddup	fighter	male	*pain50		*pain100
$playersounddup	fighter	male	*pain25		*pain100
$playeralias	fighter	male	*grunt		PlayerFighterGrunt
$playeralias	fighter	male	*land		PlayerLand
$playeralias	fighter	male	*poison		PlayerPoisonCough
$playeralias	fighter	male	*falling	PlayerFighterFallingScream
$playeralias	fighter	male	*splat		PlayerFallingSplat
$playeralias	fighter	male	*usefail	PlayerFighterFailedUse
$playeralias	fighter	male	*puzzfail	PuzzleFailFighter
$playersound	fighter	male	*jump		fgtjump
$playeralias	fighter male 	*fistgrunt	FighterGrunt

$random PlayerClericExtremeDeathPicker	{ PlayerClericExtreme1Death
					  PlayerClericExtreme2Death
					  PlayerClericExtreme3Death }

$playeralias	cleric	male	*death		PlayerClericNormalDeath
$playeralias	cleric	male	*crazydeath	PlayerClericCrazyDeath
$playeralias	cleric	male	*burndeath	PlayerClericBurnDeath
$playeralias	cleric	male	*xdeath		PlayerClericExtremeDeathPicker
$playeralias	cleric	male	*pain100	PlayerClericPain
$playersounddup	cleric	male	*pain75		*pain100
$playersounddup	cleric	male	*pain50		*pain100
$playersounddup	cleric	male	*pain25		*pain100
$playeralias	cleric	male	*grunt		PlayerClericGrunt
$playeralias	cleric	male	*land		PlayerLand
$playeralias	cleric	male	*poison		PlayerPoisonCough
$playeralias	cleric	male	*falling	PlayerClericFallingScream
$playeralias	cleric	male	*splat		PlayerFallingSplat
$playeralias	cleric	male	*usefail	PlayerClericFailedUse
$playeralias	cleric	male	*puzzfail	PuzzleFailCleric
$playersound	cleric	male	*jump		plrjump

$random PlayerMageExtremeDeathPicker	{ PlayerMageExtreme1Death
					  PlayerMageExtreme2Death
					  PlayerMageExtreme3Death }

$playeralias	mage	male	*death		PlayerMageNormalDeath
$playeralias	mage	male	*crazydeath	PlayerMageCrazyDeath
$playeralias	mage	male	*burndeath	PlayerMageBurnDeath
$playeralias	mage	male	*xdeath		PlayerMageExtremeDeathPicker
$playeralias	mage	male	*pain100	PlayerMagePain
$playersounddup	mage	male	*pain75		*pain100
$playersounddup	mage	male	*pain50		*pain100
$playersounddup	mage	male	*pain25		*pain100
$playeralias	mage	male	*grunt		PlayerMageGrunt
$playeralias	mage	male	*land		PlayerLand
$playeralias	mage	male	*poison		PlayerPoisonCough
$playeralias	mage	male	*falling	PlayerMageFallingScream
$playeralias	mage	male	*splat		PlayerFallingSplat
$playeralias	mage	male	*usefail	PlayerMageFailedUse
$playeralias	mage	male	*puzzfail	PuzzleFailMage
$playersound	mage	male	*jump		mgjump

$playeralias   	pig     male   	*usefail   	PigActive1
$playeralias   	pig     male   	*puzzfail   PigActive2
$playeralias   	pig     male   	*grunt   	PigActive1
$playeralias   	pig     male   	*land      	PigActive2
$playeralias   	pig     male   	*jump      	PigActive1
$playeralias   	pig     male   	*poison   	PigActive2
$playeralias   	pig     male   	*falling   	PigPain
$playeralias   	pig     male   	*splat   	PigDeath

$alias world/drip		Ambient10
$alias world/watersplash	WaterSplash
$alias world/lavasizzle		LavaSizzle
$alias world/sludgegloop	SludgeGloop
$alias world/wind		Wind
$alias world/quake		Earthquake
$alias world/thunder		ThunderCrash

$alias misc/w_pkup		PickupWeapon
$alias misc/p_pkup		PickupArtifact
$alias misc/k_pkup		PickupKey
$alias misc/i_pkup		PickupItem
$alias misc/spawn		Respawn
$alias misc/teleport		Teleport
$alias misc/keytry		DoorLocked
$alias misc/invuse		UseArtifact
$alias misc/freeze		FreezeDeath
$alias misc/icebreak		FreezeShatter

$alias misc/chat		Chat
$alias misc/chat2		Chat

$alias misc/fallingsplat	PlayerFallingSplat

$alias minotaur/sight		MaulatorSight
$alias minotaur/pain		MaulatorPain
$alias minotaur/death		MaulatorDeath
$alias minotaur/active		MaulatorActive
$alias minotaur/attack1		MaulatorHamHit
$alias minotaur/attack2		MaulatorHamSwing

$random BishopActiveSounds	{ BishopActive BishopSight }
$random PigActive		{ PigActive1 PigActive2 }

$limit PlayerFighterFailedUse	1
$limit PlayerClericFailedUse	1
$limit PlayerMageFailedUse	1
$limit SorcererBallWoosh	4
$limit SorcererBallBounce	3
$limit SorcererBallExplode	3
$limit SorcererBallPop		3
$limit SorcererBigBallExplode	3
$limit Ambient1			1
$limit Ambient2			1
$limit Ambient3			1
$limit Ambient4			1
$limit Ambient5			1
$limit Ambient6			1
$limit Ambient7			1
$limit Ambient8			1
$limit Ambient9			1
$limit Ambient10		1
$limit Ambient11		1
$limit Ambient12		1
$limit Ambient13		1
$limit Ambient14		1
$limit Ambient15		1
$limit MysticIncant		4

$pitchshift PlayerMageNormalDeath	0
$pitchshift PlayerMageCrazyDeath	0
$pitchshift PlayerMageExtreme1Death	0
$pitchshift PlayerMageExtreme2Death	0
$pitchshift PlayerMageExtreme3Death	0
$pitchshift PlayerMageBurnDeath		0
$pitchshift PlayerMagePain		0
$pitchshift PlayerMageGrunt		0
$pitchshift PlayerMageFallingScream	0
$pitchshift PlayerMageFailedUse		0
$pitchshift PickupWeapon		0
$pitchshift PickupPiece			0
$pitchshift WeaponBuild			0
$pitchshift BellRing			0

$alias menu/activate		DoorCloseLight
$alias menu/backup		PickupKey
$alias menu/prompt		Chat
$alias menu/cursor		FighterHammerHitWall
$alias menu/change		PickupKey
$alias menu/invalid		DoorCloseMetal	// Hexen does not use this, but I do
$alias menu/dismiss		PlatformStop
$alias menu/choose		DoorCloseLight
$alias menu/clear		PlatformStop

// Hexen does not have ripslop sound like Heretic
misc/ripslop			dsempty

$alias				intermission/cooptotal		*death
$alias				intermission/nextstage		DoorCloseLight
$alias				intermission/paststats		PlatformStop
$alias				intermission/pastcoopstats	PlatformStop
$alias				intermission/pastdmstats	*gibbed

$limit DoorCloseLight 4

$limit PuppyBeat 0
$limit CeantaurPain 0
$limit BishopPain 0
$limit SerpentPain 0
$limit DemonPain 0
$limit WraithPain 0
$limit MaulatorPain 0
$limit EttinPain 0
$limit FireDemonPain 0
$limit SorcererPain 0
$limit DragonPain 0

$endif	// ifhexen

/****************************************************************************/
/*																			*/
/* STRIFE SOUNDS															*/
/*																			*/
/****************************************************************************/

$ifstrife

$rolloff * 200 1200

$playersound	player	male	*death		dspldeth
$playersound	player	male	*xdeath		dspdiehi
$playersound	player	male	*gibbed		dsslop
$playersound	player	male	*pain100	dsplpain
$playersounddup	player	male	*pain75		*pain100
$playersounddup	player	male	*pain50		*pain100
$playersounddup	player	male	*pain25		*pain100
$playersound	player	male	*grunt		dsoof
$playersounddup	player	male	*land		*grunt
$playersound	player	male	*jump		dsjump
$playersound	player	male	*fist		dspunch
$playersound	player	male	*usefail	dsnoway

$playersound	player	female	*death		dsfldeth
$playersound	player	female	*xdeath		dsfdiehi
$playersound	player	female	*gibbed		dsslop
$playersound	player	female	*pain100	dsflpain
$playersounddup	player	female	*pain75		*pain100
$playersounddup	player	female	*pain50		*pain100
$playersounddup	player	female	*pain25		*pain100
$playersound	player	female	*grunt		dsfoof
$playersounddup	player	female	*land		*grunt
$playersound	player	female	*jump		dsfjump
$playersound	player	female	*fist		dspunch
$playersound	player	female	*usefail	dsfnoway

$playersound	player	other	*death		dscldeth
$playersound	player	other	*xdeath		dscdiehi
$playersound	player	other	*gibbed		dsslop
$playersound	player	other	*pain100	dsclpain
$playersounddup	player	other	*pain75		*pain100
$playersounddup	player	other	*pain50		*pain100
$playersounddup	player	other	*pain25		*pain100
$playersound	player	other	*grunt		dscoof
$playersounddup	player	other	*land		*grunt
$playersound	player	other	*jump		dscjump
$playersound	player	other	*fist		dspunch
$playersound	player	other	*usefail	dscnoway

weapons/xbowshoot	dsxbow
weapons/xbowhit		dsfirxpl
weapons/assaultgun	dsrifle
weapons/minimissile	dsrlaunc
weapons/minimissilehit	dsmislht
weapons/flamethrower	dsflburn
weapons/flameidle	dsflidl
weapons/mauler1		dspgrdat
weapons/mauler2charge	dsproton
weapons/mauler2fire	dsprotfl
weapons/mauler2hit	dsexplod
weapons/hegrenadeshoot	dsphoot
weapons/hegrenadebang	dsexplod
weapons/phgrenadeshoot	dsphoot
weapons/phgrenadebang	dsexplod
weapons/sigil		dssigil
weapons/sigilhit	dssglhit
weapons/sigilcharge	dssiglup

monsters/rifle		dsrifle

switches/normbutn 	dsswtchn
$alias switches/exitbutn 	switches/normbutn
switches/chain		dspulchn
switches/knob		dsswknob
switches/keycard	dskeycrd
switches/stone		dsswston
switches/bolt		dsswbolt
switches/boltback	dsempty
switches/scanner	dsswscan
switches/fool		dsdifool
switches/valve		dsvalve
switches/sizzle		dsfirxpl

world/glassbreak	dsbglass
world/barrelx		dsbarexp
world/smallfire		dssmfire
world/largefire		dslgfire
world/river		dswriver
world/waterfall		dswfall
world/waterdrip		dswdrip
world/watersplash	dswsplsh

$limit world/river	1
$limit world/waterfall	1
$limit world/waterdrip	1

world/drip		dsempty		// These four satisfy the Heretic/Hexen terrain definitions
world/sludgegloop	dsempty
world/lavasizzle	dsempty
world/lavasizzle 	dsempty

menu/activate		dsswtchn	// Activate a new menu
menu/backup		dsswtchn	// Backup to previous menu
menu/prompt		dsswtchn	// Activate a prompt "menu"
menu/cursor		dspstop		// Move cursor up/down
menu/change		dsstnmov	// Select new value for option
menu/invalid		dsoof		// Menu not available
menu/dismiss		dsswish		// Dismiss a prompt message
menu/choose		dsrifl		// Choose a menu item
menu/clear		dsmtalht	// Close top menu

misc/startupdone	dspsdtha
misc/teleport		dstelept
misc/swish		dsswish
misc/meathit		dsmeatht
misc/metalhit		dsmtalht
misc/pcrush			dspcrush
misc/gibbed			dsslop
misc/explosion			dsexplod
misc/reactor			dsreactr
misc/missileinflight	dsrflite
misc/static		dsstatic
misc/chant		dschant
misc/alarm		dsalarm
misc/disruptordeath	dsdsrptr
$singular misc/alarm

misc/secret			dsyeah
misc/w_pkup			dswpnup
misc/p_pkup			dsyeah
misc/i_pkup			dsitemup
misc/k_pkup			dsitemup
misc/spawn			dsitmbk
misc/chat			dsradio
misc/invuse			dsitemup
misc/mask			dsmask

plats/pt1_strt			dspstart
plats/pt1_stop			dspstop
plats/pt1_mid			dsstnmov

doors/dr2_open			dsbdopn
doors/dr2_clos			dsbdcls

doors/stone_open		dsdrston
doors/stone_close		dsdrston

doors/large_metal_open		dsdrlmto
doors/large_metal_close		dsdrlmtc

doors/small_metal_open		dsdrsmto
doors/small_metal_close		dsdrsmtc

doors/large_wood_open		dsdrlwud
doors/large_wood_close		dsdrlwud

doors/small_wood_open		dsdrswud
doors/small_wood_close		dsdrswud

doors/airlock_open		dsairlck
doors/airlock_close		dsairlck

doors/chain_open		dsdrchno
doors/chain_close		dsdrchnc

woodenbarrel/death		dswbrldt

human/imonfire		dsburnme

ambient/alien1		dsamaln1
ambient/alien2		dsamaln2
ambient/alien3		dsamaln3
ambient/alien4		dsamaln4
ambient/alien5		dsamaln5
ambient/alien6		dsamaln6

reaver/sight		dsrevsee
reaver/pain		dsreavpn
reaver/death		dsrevdth
reaver/active		dsrevact
reaver/attack		dsreavat
reaver/blade		dsrevbld

crusader/sight		dsrb2see
crusader/pain		dsrb2pn
crusader/death		dsrb2dth
crusader/active		dsrb2act
crusader/misl		dsrlaunc
crusader/mislx		dsmislht

bishop/sight		dsrb2see
bishop/pain		dsrb2pn
bishop/death		dspgrdth
bishop/active		dsrb2act
bishop/misl		dsrlaunc
bishop/mislx		dsmislht

sentinel/sight		dssntsee
sentinel/death		dssntdth
sentinel/active		dssntact
sentinel/plasma		dsplasma

$random peasant/pain 	{ peasant/pain1 peasant/pain2 peasant/pain3 peasant/pain4 }
peasant/pain1		dspespna
peasant/pain2		dspespnb
peasant/pain3		dspespnc
peasant/pain4		dspespnd

//$random peasant/death	{ peasant/death1 peasant/death2 peasant/death3 }
$alias peasant/death	peasant/death1
peasant/death1		dspsdtha
peasant/death2		dspsdthb
peasant/death3		dspsdthc

peasant/sight 		dsrebact
peasant/attack		dsmeatht
peasant/active		dsrebact

beggar/attack		dsmeatht
$alias beggar/pain	peasant/pain
$alias beggar/death	peasant/death

rebel/sight		dswpnup
$alias rebel/pain	peasant/pain
rebel/death		dsrebdth
rebel/active		dsrebact

barkeep/pain		dsambbar
barkeep/active		dsambppl
$singular barkeep/pain
$singular barkeep/active

$alias smith/pain	peasant/pain
$alias armorer/pain	peasant/pain
$alias medic/pain	peasant/pain
$alias zombie/death	peasant/death
$alias becoming/death	peasant/death
zombie/spawner		dstelept

acolyte/sight		dsagrsee
acolyte/pain		dsagrdpn
acolyte/death		dsagrdth
acolyte/rifle		dsrifle
$random acolyte/active	{ acolyte/active1 acolyte/active2 acolyte/active3 acolyte/active4 }
acolyte/active1		dsagrac1
acolyte/active2		dsagrac2
acolyte/active3		dsagrac3
acolyte/active4		dsagrac4

macil/sight		dsagrsee
$alias macil/pain	peasant/pain
macil/active		dsrebact
macil/slop		dsslop

alienspectre/sight	dsalnsee
alienspectre/blade	dsrevbld
alienspectre/pain	dsalnpn
alienspectre/death	dsalndth
alienspectre/active	dsalnact

turret/death		dsmislht

ore/explode		dsexplod

rat/sight		dsratact
rat/death		dsratact
rat/active		dsratact
$singular rat/sight

loremaster/chain	dschain
loremaster/swish	dsswish
loremaster/sight	dslorsee
loremaster/attack	dsrevbld
loremaster/pain		dslorpn
loremaster/death	dsslop
loremaster/active	dstend

stalker/sight		dsspisit
stalker/attack		dsspdatk
stalker/pain		dsspdatk
stalker/death		dsspidth
stalker/active		dsspisit
stalker/walk		dsspdwlk

templar/sight		dspgrsee
templar/pain		dspgrdpn
templar/death		dspgrdth
templar/active		dspgract
templar/shoot		dspgrdat

inquisitor/sight	dsinqsee
inquisitor/death	dsinqdth
inquisitor/active	dsinqact
inquisitor/walk		dsinqact
inquisitor/jump		dsinqjmp
inquisitor/attack	dsphoot
inquisitor/atkexplode	dsexplod

programmer/clank	dsmtalht
programmer/attack	dsrevbld	// Unused?
programmer/pain		dsprgpn
programmer/death	dsrb2dth
programmer/active	dsprogac

entity/sight		dsmnalse
entity/melee		dsrevbld
entity/pain		dsalnpn
entity/death		dsmnaldt
entity/active		dsalnact

$alias				intermission/tick			weapons/assaultgun
$alias				intermission/cooptotal		*death
$alias				intermission/nextstage		misc/explosion
$alias				intermission/paststats		world/barrelx
$alias				intermission/pastcoopstats	world/barrelx
$alias				intermission/pastdmstats	*gibbed

$endif
